#include <iostream>
#include <string>
using namespace std;
//皇帝 （单例）
class Emperor
{
private:
	static Emperor * emperor;
	static int a;
	Emperor() {}
public:
	int age = 34;
	static Emperor * getInstance()
	{
		return emperor;
	}
	static void release()
	{
		delete(emperor);
	}
};
//初始化（类的静态成员（static member）必须在类内声明，在类外初始化，因为静态成员属于整个类，而不属于某个对象，如果在类内初始化，会导致每个对象都包含该静态成员，这是矛盾的）
Emperor* Emperor::emperor = new Emperor();
void main6()
{
	Emperor *emperor1 = Emperor::getInstance();
	cout << emperor1->age << endl;
	emperor1->age = 35;
	Emperor *emperor2 = Emperor::getInstance();
	cout << emperor2->age << endl;
	Emperor::release();
	system("pause");
}